package tech.aistar.corejava.day02;

/**
 * Created by 李雨昂 on 2019/7/16.
 */
public class DataTypeDemo {
    public static void main(String[] args) {
        byte b = 127;
        System.out.println("b = " + b);

        //需要强制类型转换
        //Alt + Enter快捷提示
        b = (byte) 128;
        System.out.println("b = " + b);

        //大的数据类型和小的数据类型进行计算时类型往往偏向大的一方
        short s1 = 1;
        s1 = (short) (s1 + 1);
        System.out.println("s1 = " + s1);

        //s1 += 1;相当于s1 = (short) (s1 + 1);
        // += 在底层进行窄化操作
        //s1 += 1;//ok, +=在实际编码中最好不要使用

        //定义一个整数
        int a = 10;
        
        int x = 032;
        System.out.println("x = " + x);//x = 26  八进制 - 十进制

        //长整型
        //自动类型转换 - 低字节转换成高字节
        //int -> long
        long o = 123;

        //定义长整形推荐使用的方法
        long c= 123L;//此处可以写成小写的l

        //int[4] -> float[4]
        int t = 123456789;
        float f = t;
        System.out.println("f = " + f);//f = 1.23456792E8

        //int[4] -> double[4]
        double d = t;
        System.out.println("d = " + d);//d = 1.23456789E8

        //布尔类型 - "标记位"
        boolean flag = true;
        System.out.println("flag:"+flag);

    }
}
